import { apiClient } from '@/utils/apiClient';

export const UserService = {
    /**
     * 用户登录
     * @param {string} sn - 用户编号
     * @param {string} pswd - 密码
     * @returns {Promise<Object>} 登录结果
     */
    async login(sn, pswd) {
        return apiClient.get(`/api/user/login/${sn}/${pswd}`);
    },

    /**
     * 用户注册
     * @param {Object} userData - 用户数据
     * @returns {Promise<Object>} 注册结果
     */
    async register(userData) {
        return apiClient.post('/api/user/register', userData);
    },

    /**
     * 添加用户
     * @param {Object} userData - 用户数据
     * @returns {Promise<Object>} 添加结果
     */
    async addUser(userData) {
        return apiClient.post('/api/user/add', userData);
    },

    /**
     * 查询用户列表
     * @param {string|Object} queryParam - 查询参数（字符串或对象）
     * @returns {Promise<Object>} 用户列表
     */
    async queryUsers(queryParam) {

        return apiClient.get('/api/user/query/class',queryParam);
    },

    /**
     * 更新用户密码
     * @param {string} sn - 用户编号
     * @param {Object} bodyData - 密码数据
     * @returns {Promise<Object>} 更新结果
     */
    async updatePswd(sn, bodyData) {
        return apiClient.post(`/api/user/updatePswd/${sn}`, bodyData);
    },

    /**
     * 更新用户信息
     * @param {string} sn - 用户编号
     * @param {Object} bodyData - 用户信息
     * @returns {Promise<Object>} 更新结果
     */
    async updateInfo(sn, bodyData) {
        return apiClient.post(`/api/user/updateInfo/${sn}`, bodyData);
    },

    /**
     * 获取用户信息
     * @param {string} sn - 用户编号
     * @returns {Promise<Object>} 用户信息
     */
    async getUserInfo(sn) {
        return apiClient.get(`/api/user/${sn}`);
    },

    /**
     * 获取所有用户
     * @param {Object} params - 查询参数
     * @returns {Promise<Object>} 用户列表
     */
    async getAllUsers(params) {
        return apiClient.get('/api/user/', params);
    },
}
